Inti dari Antarmuka Komputasi Heterogen untuk Portabilitas (HIP) terletak pada kemampuannya untuk menyeragamkan alat-alat khusus perangkat keras menjadi API Runtime C++ yang terpadu. Dengan memanfaatkan paradigma Paradigma Single-Source, pengembang dapat mempertahankan satu basis kode yang secara dinamis dipetakan ke backend NVIDIA atau AMD.
1. Resolusi Perangkat Keras Berbasis Jalur
Arsitektur ini bergantung pada penanda lingkungan sebagai titik panduan bagi sistem pembangunan. Penanda ini memberi tahu hipcc pembungkus kompiler di mana mencari perpustakaan perangkat dan header yang diperlukan.
- CUDA_PATH: Titik utama untuk stack NVIDIA (alur kerja NVCC/PTX).
- HIP_PATH: Titik utama untuk stack AMD ROCm (alur kerja Clang/LLVM).
2. Mengabstraksi Tata Letak Komputasi
Portabilitas dicapai dengan melepaskan lapisan aplikasi dari mikroarsitektur. Logika diselesaikan pada saat pembuatan menggunakan hipcc, memastikan bahwa pemeliharaan kode $O(1)$ menghasilkan kompatibilitas perangkat keras $O(N)$.